package w4156.idog.client;

import java.util.List;

import w4156.idog.exception.AuthenticationException;
import w4156.idog.model.Card;
import w4156.idog.model.User;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface TestGWTAsync {
	public void testEBJ(AsyncCallback<String> callback);
	
	public void authenticate(String username, String password, AsyncCallback<User> callback);
	public void logout(AsyncCallback<Void> callback);
	public void createUser(User user, AsyncCallback<Void> callback);
	public void deleteUser(User user, AsyncCallback<Void> callback);
	public void modifyUser(User user, AsyncCallback<Void> callback);
	
	public void joinTable(AsyncCallback<Void> callback);
    public void getUserList(AsyncCallback<List<User>> callback);
    public void setReady(AsyncCallback<Void> callback);
    public void bid(double money, AsyncCallback<Card> callback);
    public void stand(AsyncCallback<Void> callback);
    public void hit(AsyncCallback<Card> callback);
    public void doubledown(AsyncCallback<Card> callback);
    public void surrender(AsyncCallback<Void> callback);
    //public void Card doubledown(int tableId, User user);
    public void getCardList(int userId, AsyncCallback<List<Card>> callback);
}
